#ifndef PSEUDOGRAPHIC_FONT_7_H
#define PSEUDOGRAPHIC_FONT_7_H

#include <string.h>

// Псевдографический шрифт для цифр 0-9 и разделителя (:).
// Каждый символ представлен 8 строками по 8 символов (UTF-8).
static const char* font_7[11][8] = {
    // 0
    {
        "        ",
        "  █████ ",
        " █     █",
        " █     █",
        " █     █",
        " █     █",
        " █     █",
        "  █████ "
    },
    // 1
    {
        "        ",
        "    ███ ",
        "   █ █  ",
        "  █  █  ",
        "     █  ",
        "     █  ",
        "     █  ",
        "    ███ "
    },
    // 2
    {
        "        ",
        "  █████ ",
        "       █",
        "       █",
        "  █████ ",
        " █      ",
        " █      ",
        "  █████ "
    },
    // 3
    {
        "        ",
        "  █████ ",
        "       █",
        "       █",
        "    ███ ",
        "       █",
        "       █",
        "  █████ "
    },
    // 4
    {
        "        ",
        " █     █",
        " █     █",
        " █     █",
        "  █████ ",
        "       █",
        "       █",
        "       █"
    },
    // 5
    {
        "        ",
        "  █████ ",
        " █      ",
        " █      ",
        "  █████ ",
        "       █",
        "       █",
        "  █████ "
    },
    // 6
    {
        "        ",
        "  █████ ",
        " █      ",
        " █      ",
        "  █████ ",
        " █     █",
        " █     █",
        "  █████ "
    },
    // 7
    {
        "        ",
        "  █████ ",
        " █     █",
        "       █",
        "    ███ ",
        "     █  ",
        "    █   ",
        "   █    "
    },
    // 8
    {
        "        ",
        "  █████ ",
        " █     █",
        " █     █",
        "  █████ ",
        " █     █",
        " █     █",
        "  █████ "
    },
    // 9
    {
        "        ",
        "  █████ ",
        " █     █",
        " █     █",
        "  █████ ",
        "       █",
        " █     █",
        "  █████ "
    },
    // : (разделитель)
    {
        "        ",
        "   ███  ",
        "   █ █  ",
        "   ███  ",
        "        ",
        "   ███  ",
        "   █ █  ",
        "   ███  "
    }
};

// Пустой символ для некорректных входных данных
static const char* empty_char[8] = {
    "        ",
    "        ",
    "        ",
    "        ",
    "        ",
    "        ",
    "        ",
    "        "
};

// Функция для получения псевдографического символа по значению
const char** get_pseudographic_char_7(char c) {
    if (c >= '0' && c <= '9') {
        return font_7[c - '0'];
    } else if (c == ':') {
        return font_7[10];
    }
    return empty_char;
}

#endif
